package com.ck.common.model;

/**
 * @author LinQiang
 * @version 1.0
 * @Description 节目
 * @date 2019/4/29 14:24
 **/
public class Program {
    private Long programId;

    /**
     * 节目名称
     */
    private String programName;
    /**
     * 节目版本号
     */
    private String programVersion;
    /**
     * 节目时长（毫秒）
     */
    private Integer programDuration;
    /**
     * 节目状态:1：待发布，2：待审核，3：待播放，4：播放中，5：已过期
     */
    private Integer programStatus;
    /**
     * 节目大小（所有素材之和：单位字节B）
     */
    private Long programSize;
    /**
     * 投放级别（1普通计划，2插播计划）
     */
    private Integer putinLevel;
    /**
     * 投放开始时间（年月日时分秒）
     */
    private Long putinStartTime;
    /**
     * 投放结束时间（年月日时分秒）
     */
    private Long putinEndTime;
    /**
     * 投放限制(限制是在投放时间中的限制)
     */
    private String putinLimit;
    /**
     * 分辨率（多个英文逗号隔开如：1920x1080,1080x1920  小写英文x）
     */
    private String deviceResolution;
    /**
     * 终端类型（横屏，竖屏 多个英文逗号隔开）
     */
    private String deviceType;
    /**
     * json对象字符串（键为分辨率，值为jsonId和对应的压缩包url）
     */
    private String programInfo;
    /**
     * 不通过原因
     */
    private String rejectReson;
    /**
     * 来源 (api：商家接口添加，self：自营后台)
     */
    private String origin;
    /**
     * 添加时间
     */
    private Long addTime;
    /**
     * 添加用户名称
     */
    private String addUserName;
    /**
     * 更新时间，最后操作时间
     */
    private Long updateTime;
    /**
     * 添加用户名称
     */
    private String updateUserName;
    /**
     * 是否删除（0否，1是）
     */
    private Boolean isDelete;

    /**
     * 节目类型（normal：普通节目， add：增播节目）
     */
    private String programType;
    /**
     * 下发给终端时间（需要审核的则是审批通过时间）
     */
    private Long pushTime;
    /**
     * 品牌id
     */
    private Long brandId;

    public Program(Long programId, String programName, String programVersion, Integer programDuration, Integer programStatus, Long programSize, Integer putinLevel, Long putinStartTime, Long putinEndTime, String putinLimit, String deviceResolution, String deviceType, String programInfo, String rejectReson, String origin, Long addTime, String addUserName, Long updateTime, String updateUserName, Boolean isDelete, String programType, Long pushTime, Long brandId) {
        this.programId = programId;
        this.programName = programName;
        this.programVersion = programVersion;
        this.programDuration = programDuration;
        this.programStatus = programStatus;
        this.programSize = programSize;
        this.putinLevel = putinLevel;
        this.putinStartTime = putinStartTime;
        this.putinEndTime = putinEndTime;
        this.putinLimit = putinLimit;
        this.deviceResolution = deviceResolution;
        this.deviceType = deviceType;
        this.programInfo = programInfo;
        this.rejectReson = rejectReson;
        this.origin = origin;
        this.addTime = addTime;
        this.addUserName = addUserName;
        this.updateTime = updateTime;
        this.updateUserName = updateUserName;
        this.isDelete = isDelete;
        this.programType = programType;
        this.pushTime = pushTime;
        this.brandId = brandId;
    }

    public Program() {
        super();
    }

    public Long getProgramId() {
        return programId;
    }

    public void setProgramId(Long programId) {
        this.programId = programId;
    }

    public String getProgramName() {
        return programName;
    }

    public void setProgramName(String programName) {
        this.programName = programName;
    }

    public String getProgramVersion() {
        return programVersion;
    }

    public void setProgramVersion(String programVersion) {
        this.programVersion = programVersion;
    }

    public Integer getProgramDuration() {
        return programDuration;
    }

    public void setProgramDuration(Integer programDuration) {
        this.programDuration = programDuration;
    }

    public Integer getProgramStatus() {
        return programStatus;
    }

    public void setProgramStatus(Integer programStatus) {
        this.programStatus = programStatus;
    }

    public Long getProgramSize() {
        return programSize;
    }

    public void setProgramSize(Long programSize) {
        this.programSize = programSize;
    }

    public Integer getPutinLevel() {
        return putinLevel;
    }

    public void setPutinLevel(Integer putinLevel) {
        this.putinLevel = putinLevel;
    }

    public Long getPutinStartTime() {
        return putinStartTime;
    }

    public void setPutinStartTime(Long putinStartTime) {
        this.putinStartTime = putinStartTime;
    }

    public Long getPutinEndTime() {
        return putinEndTime;
    }

    public void setPutinEndTime(Long putinEndTime) {
        this.putinEndTime = putinEndTime;
    }

    public String getPutinLimit() {
        return putinLimit;
    }

    public void setPutinLimit(String putinLimit) {
        this.putinLimit = putinLimit;
    }

    public String getDeviceResolution() {
        return deviceResolution;
    }

    public void setDeviceResolution(String deviceResolution) {
        this.deviceResolution = deviceResolution;
    }

    public String getDeviceType() {
        return deviceType;
    }

    public void setDeviceType(String deviceType) {
        this.deviceType = deviceType;
    }

    public String getProgramInfo() {
        return programInfo;
    }

    public void setProgramInfo(String programInfo) {
        this.programInfo = programInfo;
    }

    public String getRejectReson() {
        return rejectReson;
    }

    public void setRejectReson(String rejectReson) {
        this.rejectReson = rejectReson;
    }

    public String getOrigin() {
        return origin;
    }

    public void setOrigin(String origin) {
        this.origin = origin;
    }

    public Long getAddTime() {
        return addTime;
    }

    public void setAddTime(Long addTime) {
        this.addTime = addTime;
    }

    public String getAddUserName() {
        return addUserName;
    }

    public void setAddUserName(String addUserName) {
        this.addUserName = addUserName;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }

    public String getUpdateUserName() {
        return updateUserName;
    }

    public void setUpdateUserName(String updateUserName) {
        this.updateUserName = updateUserName;
    }

    public Boolean getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Boolean isDelete) {
        this.isDelete = isDelete;
    }

    public String getProgramType() {
        return programType;
    }

    public void setProgramType(String programType) {
        this.programType = programType;
    }

    public Long getPushTime() {
        return pushTime;
    }

    public void setPushTime(Long pushTime) {
        this.pushTime = pushTime;
    }

    public Long getBrandId() {
        return brandId;
    }

    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }
}